//声明变量 let 变量名:变量类型=值

//string number boolean null undefined symbol

//array object

let username:string = 'lili';

let num:number = 1;

num = 1.3;

let isLogin:boolean = true;

let test:null = null;

let num1:undefined = undefined;

let num2:number;

num2=1;

console.log(num2);

//对象的属性 let s1:symbol = Symbol(1);

// console.log(s1);

//数组

//第一种：

let arr1:string[] = ['hello','world'];

//第二种

let arr2:Array<number> = [1,2,3];

//数组的元素是任意数据类型
let arr4:any[] = ['lili',12,true,null,undefined];

//元组tuple 是数组的一种  规定了每一个数组元素的数据类型

let arr3:[string,number,boolean] = ['lili',18,false];

//推断类型

// let pagenum=1;

// pagenum=22323;

//可选类型  用管道标识符

let pagenum:number|undefined;

console.log("-----",pagenum);

console.log(username);

//any:任意类型  枚举  void:没有类型  never

let aa:any = 1;
aa = 'abc';
aa = true;

//枚举 enum  枚举常量

// enum 变量名{  //首字母大写
//     枚举类型1=值,
//     枚举类型2=值
//     ....
// }

//sex  男生：1  女生:2  保密:3

// enum Sex{
//     boy=1,
//     girl=2,
//     unkown=3
// }

enum Sex{
    boy,
    girl,
    unkown
}

//颜色

enum Color{
    write='#fff',
    black='#000',
    red="#ff0"
}

console.log(Color)

console.log("sex",Sex.boy)

//void:没有类型  用再函数没有返回值时

function fun():void{
    
}

//never 函数抛错  循环  了解

//返回“从不”的函数不能具有可访问的终结点

function fun1():never{
    while(true){

    }

    // throw new Error('error msg')
}









